package com.aoip.telemetry.telemetry.configureui.business.analysis.addition.service;

import com.aoip.telemetry.telemetry.entity.element.ElementAdditionFiledConfig;

import java.util.List;

/**
 * @author chenbai
 * @version 1.0
 * @date 2022/1/5 9:37
 */
public interface AdditionFieldsService {

    /**
     * 查询附加字段列表
     *
     * @param entity 附加字段实体
     * @return java.util.List<com.aoip.telemetry.telemetry.entity.element.ElementAdditionFiledConfig>
     * @author chenbai
     * @date 2022/1/5
     **/
    List<ElementAdditionFiledConfig> list(ElementAdditionFiledConfig entity);

    /**
     * 根据id查询单条额外字段配置信息
     *
     * @param id 数据id
     * @return com.aoip.telemetry.telemetry.entity.element.ElementAdditionFiledConfig
     * @author chenbai
     * @date 2022/1/5
     **/
    ElementAdditionFiledConfig elementAdditionField(String id);

    /**
     * 新增附加字段表数据信息
     *
     * @param entity 附加字段实体
     * @return int
     * @author chenbai
     * @date 2022/1/5
     **/
    int insert(ElementAdditionFiledConfig entity);

    /**
     * 修改附加字段表数据信息
     * @author chenbai
     * @date 2022/1/5
     * @param entity 附加字段实体
     * @return int
     **/
    int update(ElementAdditionFiledConfig entity);

    /**
     * 初始化数据到redis缓存库
     *
     * @return int
     * @author chenbai
     * @date 2022/3/8
     **/
    int initCache();

    /**
     * 删除附加字段表数据信息
     * @author chenbai
     * @date 2022/1/5
     * @param ids 数据id组件集合
     **/
    void delete(String[] ids);
}
